package com.ydd.service.impl;

import com.ydd.mapper.YddTagMapper;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.ydd.dto.TagDTO;
import com.ydd.dto.TagPageQueryDTO;
import com.ydd.mapper.YddTag;
import com.ydd.result.PageResult;
import com.ydd.service.YddTagService;
import com.ydd.vo.TagVO;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import com.ydd.vo.TagVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @Description TODO
 * @Author fang
 * @Date 2023-05-29 16:25
 */
@Service
public class YddTagServiceImpl implements YddTagService {
    @Autowired
    private YddTagMapper yddTagMapper;
    /**
     * GET标签列表 -全部
     *
     * @return
     */
    @Override
    public List<TagVO> all() {

        return yddTagMapper.all();
    }
    @Autowired YddTag yddTag;

    @Override
    public void deleteTag(Long id) {
        yddTag.deleteTag(id);
    }

    @Override
    public PageResult<TagVO> pageTag(TagPageQueryDTO tagPageQueryDTO) {
        PageHelper.startPage(tagPageQueryDTO.getPage(), tagPageQueryDTO.getLimit());
        Page<TagVO> page = yddTag.pageTag(tagPageQueryDTO);
        int totalPages = page.getPages();
        int currentPage = page.getPageNum();
        List<TagVO> data = page.getResult();
        long count = page.getTotal();
        int pageSize = page.getPageSize();
        return new PageResult<>(count,totalPages,pageSize,currentPage,data);

    }

    @Override
    public TagVO rowInfoTag(Long id) {
        TagVO tagVO=yddTag.rowInfoTag(id);
        return tagVO;
    }

    @Override
    public List<TagVO> allTag() {
        List<TagVO> tagVO=yddTag.allTage();
        return tagVO;
    }

    @Override
    public void addTag(TagDTO tagDTO) {
        yddTag.addTage(tagDTO);
    }

    @Override
    public void updateTag(TagDTO tagDTO) {
        yddTag.updateTag(tagDTO);

    }
}
